package com.zy.design.demo.structural;

/**
 * 适配器模式
 * 特点：适配不同接口，使其兼容。
 */
interface Target {
    void request();
}

//被适配者（类比电饭锅+二孔插头）
class Adaptee {
    public void specificRequest() { System.out.println("适配者方法被调用"); }
}
//适配器（类比转换器）
class Adapter implements Target {
    private Adaptee adaptee;

    public Adapter(Adaptee adaptee) { this.adaptee = adaptee; }

    public void request() { adaptee.specificRequest(); }
}

class Main {
    public static void main(String[] args) {
        //把电饭锅+二孔插头--》转换器
        Target target = new Adapter(new Adaptee());
        //这样电饭锅就可以工作了
        target.request();
    }
}
